/*
    全功共享的传值单例
 */

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

typedef NS_OPTIONS(NSInteger, TCMModifierType)
{
    TCMModifierTypeCopy = 0, // *拷贝(copy)
    TCMModifierTypeAssign = 1, // *弱引用(assign)
    TCMModifierTypeStrong = 2, // *强引用(strong)
    TCMModifierTypeWeak =  3 // *弱引用(weak)
};

@interface TCMPassInfoModel : NSObject

+ (instancetype)sharedModel;

/**
 *  添加要传值得属性
 *
 *  @param key      属性名称
 *  @param value    属性的值
 *  @param classStr 属性修饰符
 */
+ (void)addPropertyWithKey:(NSString *)key value:(id)value modifier:(TCMModifierType)modifier;

/**
 *  获取当前单例中的属性 没有则返回nil
 *
 *  @param key 属性的名称
 *
 *  @return 属性的值
 */
+ (id)getPropertyWithKey:(NSString *)key;
@end
